The present invention relates to an apparatus and a method of data reconstruction. Particularly, this invention relates to an apparatus and a method of reconstructing original data from bitstreams, such as MPEG (Moving Picture Experts Group) bitstreams.
MPEG bitstreams are made of system layer bitstreams (PES bitstreams) and elementary layer bitstreams. Each elementary layer bitstream is made of an upper layer bitstream and lower layer bitstreams that follow the upper layer bitstream.
The upper layer bitstream includes data for compensating data errors and synchronization of timing for data decompression that is different according to transfer of MPEG bitstreams via wire or wireless communications or from storage media such as magnetic tapes and discs. On the other hand, the lower layer bitstreams include video data corresponding to a portion of one picture, and audio data.
The upper and lower layer bitstreams are decompressed to obtain original data by means of software or hardware such as wired-logic circuits. Software programs are flexible to any decompression procedures but slow in processing speed. On the other hand, wired-logic circuits process data rapidly but must be re-wired for each decompression procedure.
A purpose of the present invention is to provide an apparatus and a method of reconstructing data at a high speed and that are flexible to any data reconstructing procedures.
The present invention provides a data reconstruction apparatus that includes a detector, a controller and a processor. An identifier added to a header of an input bitstream is detected by the detector. The input bitstream includes a first bitstream and a plurality of second bitstreams that follow the first bitstream. The detector then generates an identifier detection signal. The controller generates control data based on the first bitstream when the controler judges, in response to the detection signal, that the detected identifier is added to a header of the first bitstream. The control data carry information on reconstruction of original data that has been coded into the second bitstreams. Software for the start code judgement and the control data generation is installed in the controller. The processor, having wired-logic circuitry, processes the second bitstreams according to the wired-logic in response to the control data, thus reconstructing the original data.
Furthermore, the present invention provides a data reconstruction apparatus that includes a detector, a controller and a processor. A start code added to a header of an input MPEG (Moving Picture Experts Group) bitstream is detected by the detector. The MPEG bitstream includes at least one elementary layer bitstream made of an upper layer bitstream and a plurality of lower layer bitstreams that follow the upper layer bitstream. The detector then generates a start code detection signal. The controller generates control packets when the controller judges, in response to the detection signal, that the detected start code is an upper layer start code added to a header of the upper layer bitstream. The control packets carry information on reconstruction of original data that has been coded into the lower layer bitstreams. Software for the start code judgement and the control packet generation is installed in the controller. The processor, having wired-logic circuitry, processes the lower layer bitstreams according to the wired-logic in response to the control packets, thus reconstructing the original data.
Moreover, the present invention provides a data reconstruction apparatus that includes a detector, a controller, a processor and a counter. A start code added to a header of an input MPEG (Moving Picture Experts Group) bitstream is detected by the detecotr. The MPEG bitsream includes a pulrality of system layer bitstreams and elementary layer bitstreams. Each elementary layer bitstream includes an upper layer bitstream and a plurality of lower layer bitstreams that follow the upper layer bitstream. The ststem layer and elementary layer bitstreams are input to the detector in a random order per packet. The detector then generates a start code detection signal. The controller determines, in response to the detection signal, whether the detected start code is added to a header of a firstly input system layer bitstream. The controller further determines whether the system layer bitstream indicates an amount of the elementary layer bitstreams per packet when the detected start code is judged as being added to the header of the firstly input system layer bitstream. The processor processes the lower layer bitstreams according to control packets generated based on the upper layer bitstreams, thus reconstructing original data that has been coded into the lower layer bitstreams. The amount of the elementary layer bitstreams is counted by the counter while the elementary layer bitstreams are input to the detector when the firstly input system layer bitstream is judged as indicating the amount of the elementary layer bitstreams per packet. The controller generates an input inhibit command to the processor so as not to accept the lower layer bitstreams when the counted number reaches a predetermined number.
The present invention also provides a data reconstruction method. A first start code added to a header of an input MPEG bitstream is detected. The input MPEG bitstream includes a pulrality of system layer bitstreams and elementary layer bitstreams. Each elementary layer bitstream includes an upper layer bitstream and a plurality of lower layer bitstreams that follow the upper layer bitstream. The system layer and elementary layer layer bitstreams are input in a random order per packet. A first start code detection signal is generated. It is determined, in response to the first detection signal, whether the detected first start code is added to a header of a firstly input system layer bitstream, and it is determined further whether the system layer bitstream indicates an amount of the elementary layer bitstreams per packet when the detected first start code is judged as being added to the header of the firstly input system layer bitstream. A second start code added to each header of the elementary layer bitstreams is detected to generate a second start code detection signal. Control packets are generated when it is judged, in response to the second detection signal, that the detected second start code is added to a header of the upper layer bitstream. The control packets carry information on reconstruction of original data that has been coded into the lower layer bitstreams. The lower layer bitstreams are processed according to the control packets, thus reconstructing the original data. The amount of the elementary layer bitstreams is counted while the lower layer bitstreams are processed when the firstly input system layer bitstream is judged as indicating the amount of the elementary layer bitstreams per packet, thus inhibiting the processing of the lower layer bitstreams when the counted number reaches a predetermined number.